package com.jfinal.controller;

import com.jfinal.aop.Before;
import com.jfinal.core.Controller;
import com.jfinal.entity.User;
import com.jfinal.plugin.activerecord.Page;
import com.jfinal.validator.UserValidator;

import java.util.List;

/**
 * Created by li on 2016/7/16.
 */
public class UserController extends Controller{


    public void index1(){
        List<User> userList=User.dao.find("select * from user");
        setAttr("userList", userList);
        render("login.html");
    }



    /**
     * 默认
     * 方法说明
     * @Discription:扩展说明
     * @return void
     * @Author: feizi
     * @Date: 2015年4月20日 上午10:56:15
     * @ModifyUser：feizi
     * @ModifyDate: 2015年4月20日 上午10:56:15
     */
    public void index(){
        Page<User> UserPage = User.dao.paginate(getParaToInt(0, 1), 10);
        setAttr("UserPage", UserPage);
        render("User.jsp");
    }

    public void add(){

    }

    /**
     * 保存
     * 方法说明
     * @Discription:扩展说明
     * @return void
     * @Author: feizi
     * @Date: 2015年4月20日 上午10:56:25
     * @ModifyUser：feizi
     * @ModifyDate: 2015年4月20日 上午10:56:25
     */
    @Before(UserValidator.class)
    public void save(){
        User User = this.getModel(User.class);
        //Oracle数据库使用序列
        User.set("id", "test_seq_User.nextval");
        User.save();
        forwardAction("/User");
    }

    /**
     * 编辑
     * 方法说明
     * @Discription:扩展说明
     * @return void
     * @Author: feizi
     * @Date: 2015年4月20日 上午10:56:32
     * @ModifyUser：feizi
     * @ModifyDate: 2015年4月20日 上午10:56:32
     */
    public void edit(){
        User user = User.dao.findById(getParaToInt());
        setAttr("User", user.put("page_title", "修改"));
    }

    /**
     * 查看
     * 方法说明
     * @Discription:扩展说明
     * @return void
     * @Author: feizi
     * @Date: 2015年4月20日 下午5:34:03
     * @ModifyUser：feizi
     * @ModifyDate: 2015年4月20日 下午5:34:03
     */
    public void view(){
        this.setAttr("User", User.dao.findById(getParaToInt()).put("page_title", "查看"));
    }

    /**
     * 修改
     * 方法说明
     * @Discription:扩展说明
     * @return void
     * @Author: feizi
     * @Date: 2015年4月20日 上午10:56:40
     * @ModifyUser：feizi
     * @ModifyDate: 2015年4月20日 上午10:56:40
     */
    @Before(UserValidator.class)
    public void update(){
        User User = this.getModel(User.class);
        User.update();
        forwardAction("/User");
    }

    /**
     * 删除
     * 方法说明
     * @Discription:扩展说明
     * @return void
     * @Author: feizi
     * @Date: 2015年4月20日 上午10:56:47
     * @ModifyUser：feizi
     * @ModifyDate: 2015年4月20日 上午10:56:47
     */
    public void delete(){
        User.dao.deleteById(getParaToInt());
        forwardAction("/User");
    }
}
